1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to increasing the rate of recognition of spatial writing when recognizing spatial writing using an inertia sensor.
2. Description of the Related Art
Generally, a process of recognizing spatial writing is performed as shown in FIG. 1. That is, in operation S110, a user writes a character in a space using a device for detecting spatial writing, for example, a pen having a function of recognizing spatial writing, and then in operation S120, the angular velocity and acceleration of the spatial writing are measured using an inertia sensor mounted in the pen.
Thereafter, in operation S130, a writing trajectory, that is, a motion trajectory, generated in a space by the motion of the pen, is traced using the measured angular velocity and acceleration, and then in operation S140, the user's writing is recognized through the recognition of the motion trajectory at.
In the above case, the inertia sensor includes an acceleration sensor for measuring acceleration so as to calculate the change in the position of an object, and an angular velocity sensor (or a so-called “gyroscope”) for measuring an angular velocity so as to calculate the change in the rotational angle of an object.
However, in the acceleration sensor, inherent error, which is possessed by the acceleration sensor, accumulates during a process of integrating the measured acceleration with respect to time and, as a result, a large difference between a calculated position and an actual position results.
For example, the offset of the acceleration sensor, which is the output of the acceleration sensor when acceleration is applied, must ideally be 0. However, offset is caused by slight error due to the physical limitations in implementing the acceleration sensor, and varies slightly with time or temperature. The slowly varying offset value of the acceleration sensor is called drift.
Since the drift of the acceleration offset is influenced even when acceleration is applied, it is not easy to exactly distinguish the portions of the output of the acceleration sensor that are influenced by the drift and by the acceleration from each other.
FIGS. 2A, 2B, 2C, 2D, 2E, 2F, and 2G are graphs illustrating a motion trajectory in the case where the above-described drift does not exist. FIG. 2A shows a counterclockwise motion trajectory that is formed along a rectangular path with respect to x-y spatial coordinates.
Furthermore, FIGS. 2B and 2C show graphs illustrating the change in position with time for an x-axis and a y-axis, respectively, FIGS. 2D and 2E show graphs illustrating the variation in velocity with time for an x-axis and a y-axis, respectively, and FIGS. 2F and 2G show graphs illustrating the variation in acceleration with time for an x-axis and a y-axis, respectively.
FIGS. 3A, 3B, 3C, 3D, 3E, 3F and 3G are graphs illustrating a motion trajectory in the case where drift exists. FIG. 3A shows a clockwise motion trajectory that is formed along a rectangular path with respect to x-y spatial coordinates.
Furthermore, FIGS. 3B and 3C show graphs illustrating the change in position with time for an x-axis and a y-axis, respectively, FIGS. 3D and 3E show graphs illustrating the variation in velocity with time for an x-axis and a y-axis, respectively, and FIGS. 3F and 3G show graphs illustrating the variation in acceleration with time for an x-axis and a y-axis, respectively. In the examples shown in FIGS. 3A, 3B, 3C, 3D, 3E, 3F and 3G, it is assumed that the drift is
  0.01  ⁢      m    /                            sec          2                ⁡                  (                      ≅                                          1                1000                            ⁢              G                                )                    .      
Comparing FIGS. 2F and 2G with FIGS. 3F and 3G, there is almost no difference therebetween. In contrast, comparing FIGS. 2D and 2E with FIGS. 3D and 3E, each of which was integrated once, it can be seen that a slight difference exists therebetween in a one-to-two second interval with respect to an x-axis and in a two-to-three second interval with respect to a y-axis. Furthermore, comparing FIGS. 2B and 2C with FIGS. 3B and 3C, each of which was integrated twice, it can be seen that the difference therebetween is larger. That is, it can be seen that a large error occurs due to the existence of the drift when integration is performed twice so as to obtain a position from the acceleration.
FIG. 4A is another graph comparing a motion trajectory obtained in the case where drift exists with a motion trajectory obtained in the case where no drift exists. For example, the numeral “2” is drawn in a space, and a large difference occurs between the case where drift exists and the case where drift does not exist. In FIGS. 4B, 4C and 4D, the motion trajectory shown in FIG. 4A is divided on the basis of an x-axis, a y-axis, and a z-axis, respectively, and resulting motion trajectories are compared with each other. In FIGS. 4B, 4C and 4D, the motion trajectories where drift exists are labeled “A” and the motion trajectories where drift does not exist are labeled “B.”
As discussed above, numerous error occurs due to factors such as drift in the case where a motion trajectory is traced using the inertia sensor.
Accordingly, in order to minimize the error, a conventional method detects whether the velocity of a moving object is “0”, and corrects the integral value of acceleration “0” whenever the velocity is 0, thereby tracing the changing position of the object. This conventional method is shown in FIG. 5A. For example, in a graph shown in FIG. 5A, which results from the integration of the acceleration measured by the inertia sensor, the integral value of the acceleration is corrected “0” at time T when it is detected at time T that the velocity of a moving object is “0” using a predetermined method.
There is another conventional method that has been disclosed in U.S. Pat. No. 6,292,751 entitled “Positioning Refinement Algorithm.” In this method, it is detected that the velocity of a moving object is “0” using a predetermined method, and a linear equation is subtracted from a velocity curve with respect to the entire time interval so that the integral value of acceleration is “0” whenever the velocity is 0, thereby tracing the changing position of the object. This conventional method is shown in FIG. 5B. If it is detected that the velocity of a moving object is “0” at time T, a predetermined linear equation is subtracted from a velocity curve before correction for the entire time ranging from 0 to T and, therefore, a corrected velocity curve can be obtained.
The above-described methods correct velocity or acceleration using information about velocity that is “0.” In such a case, the fact that the velocity is “0” implies that there is no motion along any axis. That is, the above-described methods perform correction only when the velocity is “0” with respect to all axes, so that substantial error can accumulate.
As a result, when, for example, a user conducts writing in a space, it is difficult to recognize the writing due to the accumulated error. Moreover, conventionally, in order to perform a correction a condition in which a pause must necessarily occur before or after a writing operation is required. For example, such a condition may be fulfilled in such a manner that a pen is attached to a button and the start and end of a writing operation is indicated using the button.
Accordingly, it is necessary to improve the rate of recognition of spatial writing and recognize the spatial writing without a pause before or after a writing operation.